// map()会跳过空位，但会保留这个值!!!!

let array = [,1,,2,,3];

//ES5中 空位代表空, 不是undefined
//1.foreach 跳过空位,不保留值
// array = array.forEach(element => {
//     console.log(element);//1,2,3
//     element ++;
// });
//undefined

//2.map 跳过空位,保留值
// array = array.map((i) => ++i)//[ <1 empty item>, 2, <1 empty item>, 3, <1 empty item>, 4 ]

//3.filter 跳过空位,不保留空
// array = array.filter(e=>e++)//[ 1, 2, 3 ]
//4.every 检测数值元素的每个元素是否都符合条件 不跳过空位
// array = array.every((e)=>{
//     console.log(e);//1
//     e++;
// });//true
//5.reduce 计算数组元素相加后的总和 不跳过空位 
array = array.reduce((e)=>{
    // console.log(e);//1
    e>1;
});//undefined


//ES6中 空位就相当于undefined
console.log(array);